4 research outputs found

    Towards Energy Consumption Verification via Static Analysis

    Full text link
    In this paper we leverage an existing general framework for resource usage verification and specialize it for verifying energy consumption specifications of embedded programs. Such specifications can include both lower and upper bounds on energy usage, and they can express intervals within which energy usage is to be certified to be within such bounds. The bounds of the intervals can be given in general as functions on input data sizes. Our verification system can prove whether such energy usage specifications are met or not. It can also infer the particular conditions under which the specifications hold. To this end, these conditions are also expressed as intervals of functions of input data sizes, such that a given specification can be proved for some intervals but disproved for others. The specifications themselves can also include preconditions expressing intervals for input data sizes. We report on a prototype implementation of our approach within the CiaoPP system for the XC language and XS1-L architecture, and illustrate with an example how embedded software developers can use this tool, and in particular for determining values for program parameters that ensure meeting a given energy budget while minimizing the loss in quality of service.Comment: Presented at HIP3ES, 2015 (arXiv: 1501.03064

    On Internalizing Modules as Agents in Concurrent Constraint Programming

    Get PDF
    Module systems are an essential feature of programming languages as they facilitate the re-use of existing code and the development of general purpose libraries. There are however two somewhat contradictory ways of looking at modules in a given programming language. On the one hand, module systems are largely independent of the particulars of programming languages, and several examples of module systems have indeed been adapted to different programming languages. On the other hand, the module constructs often interfere with the programming constructs, and may be redundant with other scope mechanisms of programming languages, such as closures for instance. There is therefore a need to unify the programming concepts and constructs that are similar, and retain a minimum number of essential constructs to avoid arbitrary programming choices. In this paper, we realize this aim in the framework of linear logic concurrent constraint programming (LCC) languages. We first show how declarations and closures can be internalized as agents in LCC. We then present a modular version of LCC (MLCC), where modules are referenced by variables and where implementation hiding is obtained with the usual hiding operator for variables. We develop the logical semantics of MLCC in linear logic, and show the completeness of the operational semantics for the observation of successes and accessible stores. Finally we discuss a complete module system for constraint logic programming, derived from the MLCC scheme

    Interactions of Perilipin-5 (Plin5) with Adipose Triglyceride Lipase*

    No full text
    Members of the perilipin family of lipid droplet scaffold proteins are thought to play important roles in tissue-specific regulation of triglyceride metabolism, but the mechanisms involved are not fully understood. Present results indicate that adipose triglyceride lipase (Atgl) interacts with perilipin-5 (Plin5) but not perilipin-1 (Plin1). Protein interaction assays in live cells and in situ binding experiments showed that Atgl and its protein activator, α-β-hydrolase domain-containing 5 (Abhd5), each bind Plin5. Surprisingly, competition experiments indicated that individual Plin5 molecules bind Atgl or Abhd5 but not both simultaneously. Thus, the ability of Plin5 to concentrate these proteins at droplet surfaces involves binding to different Plin5 molecules, possibly in an oligomeric complex. The association of Plin5-Abhd5 complexes on lipid droplet surfaces was more stable than Plin5-Atgl complexes, and oleic acid treatment selectively promoted the interaction of Plin5 and Abhd5. Analysis of chimeric and mutant perilipin proteins demonstrated that amino acids 200–463 are necessary and sufficient to bind both Atgl and Abhd5 and that the C-terminal 64 amino acids of Plin5 are critical for the differential binding of Atgl to Plin5 and Plin1. Mutant Plin5 that binds Abhd5 but not Atgl was defective in preventing neutral lipid accumulation compared with wild type Plin5, indicating that the ability of Plin5 to concentrate these proteins on lipid droplets is critical to functional Atgl activity in cells
    corecore